home *** CD-ROM | disk | FTP | other *** search
- package sun.misc;
-
- import java.io.PrintStream;
-
- public class Version {
- private static final String java_version = "1.6.0";
- private static final String java_runtime_name = "Java(TM) SE Runtime Environment";
- private static final String java_runtime_version = "1.6.0-b105";
- private static boolean versionsInitialized;
- private static int jvm_major_version;
- private static int jvm_minor_version;
- private static int jvm_micro_version;
- private static int jvm_update_version;
- private static int jvm_build_number;
- private static String jvm_special_version;
- private static int jdk_major_version;
- private static int jdk_minor_version;
- private static int jdk_micro_version;
- private static int jdk_update_version;
- private static int jdk_build_number;
- private static String jdk_special_version;
- private static boolean jvmVersionInfoAvailable;
-
- public static void init() {
- System.setProperty("java.version", "1.6.0");
- System.setProperty("java.runtime.version", "1.6.0-b105");
- System.setProperty("java.runtime.name", "Java(TM) SE Runtime Environment");
- }
-
- public static void print() {
- print(System.err);
- }
-
- public static void print(PrintStream var0) {
- var0.println("java version \"1.6.0\"");
- var0.println("Java(TM) SE Runtime Environment (build 1.6.0-b105)");
- String var1 = System.getProperty("java.vm.name");
- String var2 = System.getProperty("java.vm.version");
- String var3 = System.getProperty("java.vm.info");
- var0.println(var1 + " (build " + var2 + ", " + var3 + ")");
- }
-
- public static synchronized int jvmMajorVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jvm_major_version;
- }
-
- public static synchronized int jvmMinorVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jvm_minor_version;
- }
-
- public static synchronized int jvmMicroVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jvm_micro_version;
- }
-
- public static synchronized int jvmUpdateVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jvm_update_version;
- }
-
- public static synchronized String jvmSpecialVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- if (jvm_special_version == null) {
- jvm_special_version = getJvmSpecialVersion();
- }
-
- return jvm_special_version;
- }
-
- public static native String getJvmSpecialVersion();
-
- public static synchronized int jvmBuildNumber() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jvm_build_number;
- }
-
- public static synchronized int jdkMajorVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jdk_major_version;
- }
-
- public static synchronized int jdkMinorVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jdk_minor_version;
- }
-
- public static synchronized int jdkMicroVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jdk_micro_version;
- }
-
- public static synchronized int jdkUpdateVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jdk_update_version;
- }
-
- public static synchronized String jdkSpecialVersion() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- if (jdk_special_version == null) {
- jdk_special_version = getJdkSpecialVersion();
- }
-
- return jdk_special_version;
- }
-
- public static native String getJdkSpecialVersion();
-
- public static synchronized int jdkBuildNumber() {
- if (!versionsInitialized) {
- initVersions();
- }
-
- return jdk_build_number;
- }
-
- private static synchronized void initVersions() {
- if (!versionsInitialized) {
- jvmVersionInfoAvailable = getJvmVersionInfo();
- if (!jvmVersionInfoAvailable) {
- CharSequence var0 = System.getProperty("java.vm.version");
- if (var0.length() >= 5 && Character.isDigit(var0.charAt(0)) && var0.charAt(1) == '.' && Character.isDigit(var0.charAt(2)) && var0.charAt(3) == '.' && Character.isDigit(var0.charAt(4))) {
- jvm_major_version = Character.digit(var0.charAt(0), 10);
- jvm_minor_version = Character.digit(var0.charAt(2), 10);
- jvm_micro_version = Character.digit(var0.charAt(4), 10);
- var0 = var0.subSequence(5, var0.length());
- if (var0.charAt(0) == '_' && var0.length() >= 3 && Character.isDigit(var0.charAt(1)) && Character.isDigit(var0.charAt(2))) {
- int var1 = 3;
-
- try {
- String var2 = var0.subSequence(1, 3).toString();
- jvm_update_version = Integer.valueOf(var2);
- if (var0.length() >= 4) {
- char var3 = var0.charAt(3);
- if (var3 >= 'a' && var3 <= 'z') {
- jvm_special_version = Character.toString(var3);
- ++var1;
- }
- }
- } catch (NumberFormatException var6) {
- return;
- }
-
- var0 = var0.subSequence(var1, var0.length());
- }
-
- if (var0.charAt(0) == '-') {
- var0 = var0.subSequence(1, var0.length());
- String[] var9 = var0.toString().split("-");
-
- for(String var5 : var9) {
- if (var5.charAt(0) == 'b' && var5.length() == 3 && Character.isDigit(var5.charAt(1)) && Character.isDigit(var5.charAt(2))) {
- jvm_build_number = Integer.valueOf(var5.substring(1, 3));
- break;
- }
- }
- }
- }
- }
-
- getJdkVersionInfo();
- versionsInitialized = true;
- }
- }
-
- private static native boolean getJvmVersionInfo();
-
- private static native void getJdkVersionInfo();
-
- static {
- init();
- versionsInitialized = false;
- jvm_major_version = 0;
- jvm_minor_version = 0;
- jvm_micro_version = 0;
- jvm_update_version = 0;
- jvm_build_number = 0;
- jvm_special_version = null;
- jdk_major_version = 0;
- jdk_minor_version = 0;
- jdk_micro_version = 0;
- jdk_update_version = 0;
- jdk_build_number = 0;
- jdk_special_version = null;
- }
- }
-